package com.fjs.controller;

import cn.dev33.satoken.stp.StpUtil;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

/**
 * @Title: UserController
 * @Description:
 * @PACKAGE_NAME：com.fjs.controller
 * @Author: 94358 fangjinsen
 * CreateDate: 2022/5/18 16:53
 */

//@RestController注解，相当于@Controller+@ResponseBody两个注解的结合，
// 返回json数据不需要在方法前面加@ResponseBody注解了，但
// 使用@RestController这个注解，就不能返回jsp,html页面，
// 视图解析器无法解析jsp,html页面
@RestController
@RequestMapping("/user/")
public class UserController {
    // 测试登录，浏览器访问： http://localhost:8080/user/doLogin?username=zhang&password=123456
    @RequestMapping("doLogin")
    public String doLogin(String username, String password) {
        // 此处仅作模拟示例，真实项目需要从数据库中查询数据进行比对
        if ("zhang".equals(username) && "123456".equals(password)) {
            StpUtil.login(10001);
            return "登录成功";
        }
        return "登录失败";
    }

    // 查询登录状态，浏览器访问： http://localhost:8080/user/isLogin
    @RequestMapping("isLogin")
    public String isLogin() {
        return "当前会话是否登录：" + StpUtil.isLogin();
    }

    // 退出登录状态，浏览器访问： http://localhost:8080/user/logout
    @RequestMapping("logout")
    public String logout() {
        StpUtil.logout();
        return "账号已经退出";
    }
}
